In a control device that controls position and velocity of a control target driven using a motor in a machining tool or the like, a control parameter is set so as to enable highly precise movement of the control target. However, since the inertia value at a shaft on which a workpiece (i.e., a machined object) is mounted becomes varied depending on the workpiece weight, if the control parameter is a fixed value, adaptations to changes in the inertia value cannot be made, so that the control parameter may not be optimal. Further, when the tool's control characteristic is changed due to changes over time, the control parameter may become unsuitable. Considering these points, for the purpose of maintaining tool precision, recently attempts have been made to change a control parameter in response to changes in the inertia value and the tool's changes over time.
JP 2010-211467 A discloses a technique of automatically estimating an inertia value of a workpiece, and setting a control parameter corresponding to the inertia value based on control parameters that are stored in advance in a memory device and adjusted according to a plurality of different inertia values.
FIG. 12 shows a control block diagram according to background art. With respect to a value output from a position command calculator 3, an acceleration/deceleration processor 4 performs acceleration/deceleration processing in accordance with an acceleration/deceleration processing time T set in the acceleration/deceleration processor 4, and outputs a position command value Pc. A subtractor 5 calculates a positional difference Pdif between the position command value Pc and a detected position value Pm from a motor position detector 11 mounted on a motor 22. The positional difference is multiplied by a proportional gain Kp to thereby output a velocity command Vc. A differentiator 16 differentiates the detected position value Pm and outputs a detected motor velocity value Vm. A subtractor 15 calculates a difference between the velocity command Vc and the detected motor velocity value Vm, and outputs the difference as a velocity difference. Based on the velocity difference, a velocity loop proportional gain Pv, and a velocity loop integral gain Iv, a proportional component of the velocity difference and an integral component of the velocity difference are output. An adder 9 adds together the proportional component of the velocity difference and the integral component of the velocity difference, and outputs a torque command Tc. Element 10 in FIG. 12 represents various filter units for filtering the torque command, and also a current control unit. Element 10 outputs a current Ic to the motor 22 to thereby rotate a ball screw 13 and to control position of a workpiece 24 mounted on a table 14.
Based on an acceleration Am output by a differentiator 26 by differentiating the detected velocity value Vm, and also based on the current Ic, an inertia identifying unit 17 identifies a workpiece inertia value Jx and outputs the value to a control parameter setting unit 19. The inertia value JX input into the control parameter setting unit 19 may alternatively be an inertia value JX directly input by an operator using a graphical user interface (hereinafter referred to as “GUI”) 18. A memory device 2 has stored therein, in advance, respective control parameter values assigned to each of a plurality of different inertia values J0˜Jmax, the control parameters being parameters such as acceleration/deceleration time constant Tf, position loop gain Kpf, velocity loop proportional gain Pvf, and velocity loop integral gain Ivf. Based on the respective control parameter values that are stored in the memory device 2 and assigned to each of the plurality of different inertia values J0˜Jmax, the control parameter setting unit 19 calculates values corresponding to the input inertia value JX, and sets the calculated values as the control parameters.
FIGS. 13 to 16 are diagrams illustrating the relationships of the control parameters stored in the memory device 2 shown in FIG. 12 with respect to inertia. FIG. 13 shows the acceleration/deceleration time constant Tf, FIG. 14 shows the position loop gain Kpf, FIG. 15 shows the velocity loop proportional gain Pvf, and FIG. 16 shows the velocity loop integral gain Ivf. In each diagram, the inertia value J0 denotes an inertia value obtained when no workpiece is mounted on the table 14 in FIG. 12, while Jmax denotes an inertia value obtained when a workpiece having the maximum mountable size is mounted on the table 14. Jn denotes a plurality of different inertia values pre-specified between the inertia value J0 obtained when no workpiece is mounted and the inertia value Jmax obtained when a maximum-sized workpiece is mounted. As shown in the diagrams, regarding each control parameter, optimum control parameter values are assigned to the respective preset inertia values J0˜Jmax.
FIG. 17 is a diagram explaining a process performed by the control parameter setting unit 19 shown in FIG. 12. Here, as an example, an explanation is given concerning a method of calculating, based on the values of acceleration/deceleration time constant Tf shown in FIG. 13, an acceleration/deceleration time constant value Tx corresponding to an inertia value Jx input from the inertia identifying unit 17. As shown in FIG. 17, when the input inertia value Jx is a value between the inertia values Jn and Jn−1, the acceleration/deceleration time constant Tfx corresponding to the inertia value Jx is calculated using Formula 1 shown below, based on the acceleration/deceleration time constant values Tfn and Tfn−1 assigned to the inertia values Jn and Jn−1. Concerning other parameters too, by similarly calculating assigned values corresponding to the inertia value Jx, various control parameters corresponding to the inertia value can be obtained.Tfx=(Tfn−Tfn−1)÷(Jn−Jn−1)×(Jx−Jn−1)+Tfn−1   Formula 1
JP H11-102211 A discloses a method of detecting a positional error of a control target generated when an operation is performed to reverse rotation of a shaft, and automatically adjusting a control parameter so that the positional error becomes smaller than a threshold value. FIG. 18 shows a control block diagram according to background art. Elements identical to those in the background art shown in FIG. 12 are labeled with the same reference symbols, and explanation thereof is not repeated.
An automatic control-parameter adjustment unit 20 receives input of position command values Pc and detected position values Pm at the time of performing an operation to reverse rotation of a shaft. Based on the input values, the automatic control-parameter adjustment unit 20 calculates positional errors, and determines whether the positional errors are not oscillating. When not oscillating, assigned values of control parameters such as the acceleration/deceleration time constant T, the position loop gain Kp, the velocity loop proportional gain Pv, and the velocity loop integral gain Iv are increased or decreased by a prescribed amount. Further, similar operations to reverse shaft rotation are repeated, and the assigned values of the control parameters are gradually changed. When the positional error becomes smaller than a threshold value, the values of the control parameters assigned at that point are used as the optimum values to update the control parameter values.
As another conventional example, JP 4327880 B discloses a method of adding an oscillating component as a torque disturbance to a torque command value, measuring a frequency characteristic of the control system using the torque disturbance as the input value and the torque command value as the output value of the system, and making adjustments to attain the optimum velocity loop proportional gain Pv and velocity loop integral gain Iv. FIG. 19 shows a control block diagram according to background art. Elements identical to those in the background art shown in FIG. 12 are labeled with the same reference symbols, and explanation thereof is not repeated.
An automatic control-parameter adjustment unit 120 adds an oscillating component as a torque disturbance Td to a torque command value Tc. Further, in the automatic control-parameter adjustment unit 120, the torque command value Tc before adding the torque disturbance Td is input, and a frequency characteristic is calculated using the torque disturbance Td as an input value into the control system and the torque command value Tc as an output value from the control system. Based on the calculated frequency characteristic, the velocity loop proportional gain Pv and the velocity loop integral gain Iv are adjusted.
Concerning the first technique described above, when the tool's control characteristic is changed due to changes over time, the control parameters stored in the memory device are no longer optimum, resulting in degradation of machining precision. In that situation, it is necessary to provide an arrangement for applying a plurality of workpiece inertia values with which initial adjustments had been made, and to perform re-adjustments with respect to those workpiece inertia values. However, it is difficult to provide such an arrangement for applying a plurality of workpiece inertia values with which initial adjustments had been made. Further, even if such an arrangement can be provided, it is a drawback in that much time is required to re-adjust the respective control parameters for each of the plurality of workpiece inertia values.
Furthermore, in the methods of obtaining optimum control parameters using an automatic control-parameter adjustment unit, although an optimum control parameter can be obtained for the workpiece inertia used during the adjustment, it is necessary to newly perform an adjustment every time the workpiece inertia is changed. Accordingly, it is a drawback in that much time is required to adjust the plurality of control parameters at each instance.
An object of the present invention is to achieve a configuration in which respective control parameter values that are stored in a memory device for each of a plurality of different inertia values can be changed into control parameter values conforming to the tool's control characteristic, without providing an arrangement for applying a plurality of workpiece inertia values with which initial adjustments had been made. A further object is to achieve a configuration in which, when the workpiece inertia is changed, a change into an optimum control parameter can always be made by simply identifying the inertia.